import pandas as pd

# 2023年人口数据
df1 = pd.DataFrame({
    '城市': ['呼和浩特', '包头', '鄂尔多斯'],
    '2023年人口': [3100000, 2800000, 2100000]
})
# 2024年人口数据
df2 = pd.DataFrame({
    '城市': ['呼和浩特', '包头', '赤峰'],
    '2024年人口': [3150000, 2820000, 4200000]
})

# 纵向堆叠Ch08-25.1
# 简单纵向堆叠两个DataFrame
result = pd.concat([df1, df2])
print(result)

# 基于Ch08-25.1中创建的Dataframe[df1]和[df2]
# 横向堆叠两个DataFrameCh08-25.2
result = pd.concat([df1, df2], axis=1)
print(result)


# Ch08-25.3：内连接
# 基于Ch08-25.2中创建的Dataframe[df1]和[df2]
result = pd.concat([df1.set_index('城市'), df2.set_index('城市')], axis=1, join='inner')
print(result)

# Ch08-25.4：外连接
# 基于Ch08-25.1中创建的Dataframe[df1]和[df2]
# 添加 keys 参数区分原始DataFrame
result = pd.concat([df1, df2], keys=['2023', '2024'])
print(result)

